package controller

import (
	"backendChat/models"
	"backendChat/utils"
	"fmt"

	"github.com/gin-gonic/gin"
)

// @BasePath /api/v1
// @Summary 查询好友
// @Tags 全局模块
// @Success 200 {object} utils.HLIST{data=[]object}
// @Router /contacts [post]
func Contacts(c *gin.Context) {
	id := c.MustGet("userId").(uint)
	users := models.Contacts(id)
	utils.RespOkList(c.Writer, users, len(users))
}

// @BasePath /api/v1
// @Summary 查询用户
// @Tags 用户摸快
// @param X-Csrf-Token header string true "token"
// @param name query string false "name"
// @Success 200 {array} utils.HLIST
// @Router /user/search [get]
func SearchUser(c *gin.Context) {
	name := c.Request.URL.Query().Get("name")
	users := models.FindVagueUserByName(name)
	utils.RespOkList(c.Writer, users, len(users))
}

// @BasePath /api/v1
// @Summay 添加好友
// @Tags 联系人模块
// @patam userId body uint true "userId"
// @Success 200
// @Router /contact/add [post]
func ContactAdd(c *gin.Context) {
	contact := models.Contact{}
	id := c.MustGet("userId").(uint)
	var param utils.JSONParamId
	err := c.BindJSON(&param)
	if err != nil {
		utils.RespFail(c.Writer, "参数错误")
		return
	}
	contact.OwnerId = id
	contact.TargetId = param.ID
	fmt.Println(param.ID)
	models.CreateContact(contact)
	utils.RespOk(c.Writer, nil)
}
